home *** CD-ROM | disk | FTP | other *** search
- TiMidity-0.2i port to OS/2 Warp with DART and PM support
- --------------------------------------------------------
- June 3, 1997
-
- To get this to play MIDIs in real time you'll need to have DART
- (Direct Audio Real-Time) working on your computer. If you have OS/2
- Warp 4, you're set. If you have version 3, what you need, accourding
- to IBM, is have FixPak 10 or greater installed. You can check this by
- doing a VER /R at the command line and if the revision number is more
- then 8.234 then you do. If you don't you can get the lastest FixPak
- at href="http://ps.software.ibm.com/pbin-usa-ps/getobj.pl?/pdocs-usa/
- os2warp.html It will not work on any OS/2 version before 3.
-
- The driver has a buffer that's a couple of seconds in size, so if
- you do something, like open a folder, the sound may not suffer. The
- size of the buffer is set with the "-B n" where n is the number of
- buffers. The default number of buffers is 40.
-
- If the program is getting behind the program will dynamically
- increase it's priority. If it's still falling behind setting the
- resampling frequency to something lower will help. This is done with
- the "-s f" switch where f is the new resampling frequency. I
- sometimes find that it sound will be distored when the computer is
- working, even there is enough in the buffer. I think this is cause by
- the fact that it can't send the next buffer to the sound card when the
- computer writing to an accelated video card. Lowering the resamplling
- frequency helps with this, too. The default for the OS/2 version of
- TiMidity is 22050. A value of 11025 is good. Other values will work
- if your sound card supports it.
-
- The format values supported include 8 and 16 bit sample widths
- (using 8 bit will not improve performance, TiMidity generates 32 bit
- data and has to reduce it in any event). You can select mono or
- stereo. Using mono does improve performance. Selecting Signed,
- Unsigned or Byte-swapped will be overriden with the DART driver.
- Using the default of 16 bit stereo will should work fine for most
- people.
-
- The SLang interface only displays as many lines of messages from
- TiMidity as it has room on the screen. You can switch to the old
- simple interface with -id or, better yet, use -ist to get a fancy
- display of the notes being played, although the display is quiet a bit
- ahead or what you hear. You can reduce that lag by setting the -B n
- value to something low, like 3.
-
- There are some minor problems, none of which are my fault :-).
- First every time the program ends gives two MMOS/2 errors about an
- invalid device ID given. It does this because the main TiMidity
- program calls the sound driver closing function twice. The first time
- it closes properly, the second it gives errors. It's nothing to worry
- about.
-
- TiMidity can generate .wav files, but it does 16 bit .wavs
- wrongly. If you got a hankering to make a .wav file you can force it
- generate 8 bit data and that'll work. The .wav file system was not
- written by me. The MS-DOS version of TiMidity does generate proper 16
- bit. If I had half a mind I'd get it working in OS/2 the same way.
-
- Often when it finished playing a song it'll say "Output Flush
- timed out". This means that it was waiting for the buffer to empty,
- but it never figured out when it did. This may sometimes cause a bit
- of silence between songs, but that's all. This problem may be my
- fault.
-
- If you have any questions or comments, please email me at
- doconnor@autobahn.mb.ca and watch
- http://www.autobahn.mb.ca/~doconnor/timidity.html for updates.
-
- TODO: Make it a MMOS/2 device. (so you might be able to get
- TiMidity to play the Midi inbedded within OS/2 games). Use DSMI
- (Timidity has it's own mixer right now).
-
- -----
-
- On a personal note, and I'm not sure if this is appropriate, I'm
- interested in jobs where I'd have the opportunity to program for OS/2
- or, possibly, be involved in writing a compiler. This is not a plea
- as I'm currently quite gainfully employed as a computer programmer-
- consultant. I am a Canadian and I'm not interesting in going to the
- United States unless it was a really interesting job (like working for
- StarDock). Other countries I may give a bit more consideration to.
- You can email me at doconnor@autobahn.mb.ca
-